﻿/***********************************************************************
 * <copyright file="IAOnlineServiceDto.cs" company="BUCA JSC">
 * -->    Copyright (C) statement. All right reserved
 * </copyright>
 * 
 * Created:   Tuanhm
 * Email:    Tuanhm@humg@gmail.com
 * Website:
 * Create Date: Thursday, March 27, 2014
 * Usage: 
 * 
 * RevisionHistory: 
 * Date         Author               Description 
 * 
 * ************************************************************************/



using AOnlineService.Messages;
using AOnlineService.Messages.Dictionary;
namespace AOnlineService.ServiceContracts  
{
    /// <summary>
    /// IService is the interface for BigTime public services.
    /// </summary>
    /// <remarks>
    /// Application Facade Pattern.
    /// </remarks>
    public interface IAOnlineDictionaryService
    {
        /// <summary>
        /// Gets the token.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        TokenResponse GetToken(TokenRequest request);
        /// <summary>
        /// 
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        EmployTestResponse GetEmployTests(EmployTestRequest request);
        /// <summary>
        /// 
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        EmployTestResponse SetEmployTests(EmployTestRequest request);
        /// <summary>
        /// 
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        DepartmentTestResponse GetDepartmentTests(DepartmentTestRequest request); 
        /// <summary>
        /// 
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        DepartmentTestResponse SetDepartmentTests(DepartmentTestRequest request);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        AccountResponse GetAccounts(AccountRequest request);
        /// <summary>
        /// 
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        AccountResponse SetAccounts(AccountRequest request);

    }
}